#
# OMNeT++/OMNEST Makefile for libmymodule
#
# This file was generated with the command:
#  opp_makemake -f --deep --make-so -o mymodule -O out -I../../MiXiM/base/messages -I../../MiXiM/base/phyLayer -I../../MiXiM/base/modules -I../../MiXiM/base/connectionManager -I../../MiXiM/base/utils -I../../MiXiM/modules/utility -L../../MiXiM/out/$(CONFIGNAME)/tests/testUtils -L../../MiXiM/out/$(CONFIGNAME)/base -L../../MiXiM/out/$(CONFIGNAME)/modules -lmiximtestUtils -lmiximbase -lmiximmodules -KMIXIM_PROJ=../../MiXiM
#

# Name of target to be created (-o option)
TARGET = libmymodule$(SHARED_LIB_SUFFIX)

# C++ include paths (with -I)
INCLUDE_PATH = \
    -I../../MiXiM/base/messages \
    -I../../MiXiM/base/phyLayer \
    -I../../MiXiM/base/modules \
    -I../../MiXiM/base/connectionManager \
    -I../../MiXiM/base/utils \
    -I../../MiXiM/modules/utility \
    -I. \
    -Imac \
    -Imsg \
    -Inet \
    -Iutility

# Additional object and library files to link with
EXTRA_OBJS =

# Additional libraries (-L, -l options)
LIBS = -L../../MiXiM/out/$(CONFIGNAME)/tests/testUtils -L../../MiXiM/out/$(CONFIGNAME)/base -L../../MiXiM/out/$(CONFIGNAME)/modules  -lmiximtestUtils -lmiximbase -lmiximmodules
LIBS += -Wl,-rpath,`abspath ../../MiXiM/out/$(CONFIGNAME)/tests/testUtils` -Wl,-rpath,`abspath ../../MiXiM/out/$(CONFIGNAME)/base` -Wl,-rpath,`abspath ../../MiXiM/out/$(CONFIGNAME)/modules`

# Output directory
PROJECT_OUTPUT_DIR = ../out
PROJECTRELATIVE_PATH = src
O = $(PROJECT_OUTPUT_DIR)/$(CONFIGNAME)/$(PROJECTRELATIVE_PATH)

# Object files for local .cc and .msg files
OBJS = \
    $O/mac/BmacLayer.o \
    $O/mac/RealTimeSMACLayer.o \
    $O/mac/SMACLayer.o \
    $O/net/BmacNetwLayer.o \
    $O/net/WSNNetworkStackTrafficGen.o \
    $O/utility/WSNWorldUtilityStats.o \
    $O/msg/BMACPkt_m.o \
    $O/msg/RSMacMsg_m.o \
    $O/msg/SMacMsg_m.o \
    $O/msg/sensor_m.o

# Message files
MSGFILES = \
    msg/BMACPkt.msg \
    msg/RSMacMsg.msg \
    msg/SMacMsg.msg \
    msg/sensor.msg

# Other makefile variables (-K)
MIXIM_PROJ=../../MiXiM

#------------------------------------------------------------------------------

# Pull in OMNeT++ configuration (Makefile.inc or configuser.vc)

ifneq ("$(OMNETPP_CONFIGFILE)","")
CONFIGFILE = $(OMNETPP_CONFIGFILE)
else
ifneq ("$(OMNETPP_ROOT)","")
CONFIGFILE = $(OMNETPP_ROOT)/Makefile.inc
else
CONFIGFILE = $(shell opp_configfilepath)
endif
endif

ifeq ("$(wildcard $(CONFIGFILE))","")
$(error Config file '$(CONFIGFILE)' does not exist -- add the OMNeT++ bin directory to the path so that opp_configfilepath can be found, or set the OMNETPP_CONFIGFILE variable to point to Makefile.inc)
endif

include $(CONFIGFILE)

# Simulation kernel and user interface libraries
OMNETPP_LIB_SUBDIR = $(OMNETPP_LIB_DIR)/$(TOOLCHAIN_NAME)
OMNETPP_LIBS = -L"$(OMNETPP_LIB_SUBDIR)" -L"$(OMNETPP_LIB_DIR)" -loppenvir$D $(KERNEL_LIBS) $(SYS_LIBS)

COPTS = $(CFLAGS)  $(INCLUDE_PATH) -I$(OMNETPP_INCL_DIR)
MSGCOPTS = $(INCLUDE_PATH)

#------------------------------------------------------------------------------
# User-supplied makefile fragment(s)
# >>>
# <<<
#------------------------------------------------------------------------------

# Main target
all: $(TARGET)

$(TARGET) : $O/$(TARGET)
	$(LN) $O/$(TARGET) .

$O/$(TARGET): $(OBJS)  $(wildcard $(EXTRA_OBJS)) Makefile
	@$(MKPATH) $O
	$(SHLIB_LD) -o $O/$(TARGET)  $(OBJS) $(EXTRA_OBJS) $(LIBS) $(OMNETPP_LIBS) $(LDFLAGS)
	$(SHLIB_POSTPROCESS) $O/$(TARGET)

.PHONY:

.SUFFIXES: .cc

$O/%.o: %.cc
	@$(MKPATH) $(dir $@)
	$(CXX) -c $(COPTS) -o $@ $<

%_m.cc %_m.h: %.msg
	$(MSGC) -s _m.cc $(MSGCOPTS) $?

msgheaders: $(MSGFILES:.msg=_m.h)

clean:
	-rm -rf $O
	-rm -f mymodule mymodule.exe libmymodule.so libmymodule.a libmymodule.dll libmymodule.dylib
	-rm -f ./*_m.cc ./*_m.h
	-rm -f mac/*_m.cc mac/*_m.h
	-rm -f msg/*_m.cc msg/*_m.h
	-rm -f net/*_m.cc net/*_m.h
	-rm -f utility/*_m.cc utility/*_m.h

cleanall: clean
	-rm -rf $(PROJECT_OUTPUT_DIR)

depend:
	$(MAKEDEPEND) $(INCLUDE_PATH) -f Makefile -P\$$O/ -- $(MSG_CC_FILES)  ./*.cc mac/*.cc msg/*.cc net/*.cc utility/*.cc

# DO NOT DELETE THIS LINE -- make depend depends on it.
$O/mac/SMACLayer.o: mac/SMACLayer.cc \
	$(MIXIM_PROJ)/base/modules/AddressingInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/DeciderToPhyInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/AnalogueModel.h \
	$(MIXIM_PROJ)/base/modules/Blackboard.h \
	$(MIXIM_PROJ)/base/modules/BaseUtility.h \
	$(MIXIM_PROJ)/base/modules/BaseMacLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseLayer.h \
	$(MIXIM_PROJ)/base/modules/BatteryAccess.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyToMacControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/Decider.h \
	$(MIXIM_PROJ)/base/connectionManager/BaseConnectionManager.h \
	$(MIXIM_PROJ)/base/phyLayer/Interpolation.h \
	$(MIXIM_PROJ)/base/utils/Move.h \
	$(MIXIM_PROJ)/base/phyLayer/ChannelState.h \
	$(MIXIM_PROJ)/base/messages/ChannelSenseRequest_m.h \
	$(MIXIM_PROJ)/base/modules/BaseBattery.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyUtils.h \
	$(MIXIM_PROJ)/base/utils/SimpleAddress.h \
	$(MIXIM_PROJ)/base/utils/FWMath.h \
	$(MIXIM_PROJ)/base/modules/ArpInterface.h \
	$(MIXIM_PROJ)/base/utils/ImNotifiable.h \
	$(MIXIM_PROJ)/base/modules/BaseArp.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingBase.h \
	$(MIXIM_PROJ)/base/utils/FindModule.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyInterface.h \
	$(MIXIM_PROJ)/base/utils/Coord.h \
	$(MIXIM_PROJ)/base/phyLayer/Mapping.h \
	$(MIXIM_PROJ)/base/modules/BaseWorldUtility.h \
	$(MIXIM_PROJ)/base/connectionManager/NicEntry.h \
	mac/SMACLayer.h \
	msg/SMacMsg_m.h \
	$(MIXIM_PROJ)/base/utils/HostState.h \
	$(MIXIM_PROJ)/base/modules/BaseModule.h \
	$(MIXIM_PROJ)/base/utils/MacToNetwControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingUtils.h \
	$(MIXIM_PROJ)/base/phyLayer/Signal_.h \
	$(MIXIM_PROJ)/base/utils/PassedMessage.h \
	$(MIXIM_PROJ)/base/utils/NetwToMacControlInfo.h \
	$(MIXIM_PROJ)/base/messages/AirFrame_m.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyControlInfo.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/mac/BmacLayer.o: mac/BmacLayer.cc \
	$(MIXIM_PROJ)/base/phyLayer/DeciderToPhyInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/AnalogueModel.h \
	$(MIXIM_PROJ)/base/modules/Blackboard.h \
	$(MIXIM_PROJ)/base/modules/BaseUtility.h \
	mac/BmacLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseMacLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseLayer.h \
	$(MIXIM_PROJ)/base/modules/BatteryAccess.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyToMacControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/Decider.h \
	$(MIXIM_PROJ)/base/connectionManager/BaseConnectionManager.h \
	$(MIXIM_PROJ)/base/phyLayer/Interpolation.h \
	$(MIXIM_PROJ)/base/utils/Move.h \
	$(MIXIM_PROJ)/base/phyLayer/ChannelState.h \
	$(MIXIM_PROJ)/base/messages/ChannelSenseRequest_m.h \
	$(MIXIM_PROJ)/base/modules/BaseBattery.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyUtils.h \
	msg/BMACPkt_m.h \
	$(MIXIM_PROJ)/base/utils/SimpleAddress.h \
	$(MIXIM_PROJ)/base/utils/FWMath.h \
	$(MIXIM_PROJ)/base/utils/ImNotifiable.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingBase.h \
	$(MIXIM_PROJ)/base/utils/FindModule.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/Mapping.h \
	$(MIXIM_PROJ)/base/utils/Coord.h \
	$(MIXIM_PROJ)/base/modules/BaseWorldUtility.h \
	$(MIXIM_PROJ)/modules/utility/DroppedPacket.h \
	$(MIXIM_PROJ)/base/connectionManager/NicEntry.h \
	$(MIXIM_PROJ)/base/utils/HostState.h \
	$(MIXIM_PROJ)/base/modules/BaseModule.h \
	$(MIXIM_PROJ)/base/utils/MacToNetwControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingUtils.h \
	$(MIXIM_PROJ)/base/phyLayer/Signal_.h \
	$(MIXIM_PROJ)/base/utils/PassedMessage.h \
	$(MIXIM_PROJ)/base/utils/NetwToMacControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyControlInfo.h \
	$(MIXIM_PROJ)/base/messages/AirFrame_m.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/mac/RealTimeSMACLayer.o: mac/RealTimeSMACLayer.cc \
	$(MIXIM_PROJ)/base/phyLayer/DeciderToPhyInterface.h \
	$(MIXIM_PROJ)/base/modules/AddressingInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/AnalogueModel.h \
	$(MIXIM_PROJ)/base/modules/Blackboard.h \
	$(MIXIM_PROJ)/base/modules/BaseUtility.h \
	$(MIXIM_PROJ)/base/modules/BaseMacLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseLayer.h \
	$(MIXIM_PROJ)/base/modules/BatteryAccess.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyToMacControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/Decider.h \
	$(MIXIM_PROJ)/base/connectionManager/BaseConnectionManager.h \
	$(MIXIM_PROJ)/base/phyLayer/Interpolation.h \
	mac/RealTimeSMACLayer.h \
	$(MIXIM_PROJ)/base/utils/Move.h \
	$(MIXIM_PROJ)/base/phyLayer/ChannelState.h \
	$(MIXIM_PROJ)/base/messages/ChannelSenseRequest_m.h \
	$(MIXIM_PROJ)/base/modules/BaseBattery.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyUtils.h \
	msg/sensor_m.h \
	$(MIXIM_PROJ)/base/utils/SimpleAddress.h \
	$(MIXIM_PROJ)/base/utils/FWMath.h \
	$(MIXIM_PROJ)/base/modules/ArpInterface.h \
	$(MIXIM_PROJ)/base/utils/ImNotifiable.h \
	$(MIXIM_PROJ)/base/modules/BaseArp.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingBase.h \
	$(MIXIM_PROJ)/base/utils/FindModule.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/Mapping.h \
	$(MIXIM_PROJ)/base/utils/Coord.h \
	$(MIXIM_PROJ)/base/modules/BaseWorldUtility.h \
	$(MIXIM_PROJ)/base/connectionManager/NicEntry.h \
	msg/RSMacMsg_m.h \
	$(MIXIM_PROJ)/base/utils/HostState.h \
	$(MIXIM_PROJ)/base/modules/BaseModule.h \
	$(MIXIM_PROJ)/base/utils/MacToNetwControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingUtils.h \
	$(MIXIM_PROJ)/base/phyLayer/Signal_.h \
	$(MIXIM_PROJ)/base/utils/PassedMessage.h \
	$(MIXIM_PROJ)/base/utils/NetwToMacControlInfo.h \
	$(MIXIM_PROJ)/base/messages/NetwPkt_m.h \
	$(MIXIM_PROJ)/base/messages/AirFrame_m.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyControlInfo.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/msg/BMACPkt_m.o: msg/BMACPkt_m.cc \
	msg/BMACPkt_m.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/msg/RSMacMsg_m.o: msg/RSMacMsg_m.cc \
	msg/RSMacMsg_m.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/msg/sensor_m.o: msg/sensor_m.cc \
	msg/sensor_m.h \
	$(MIXIM_PROJ)/base/messages/NetwPkt_m.h
$O/msg/SMacMsg_m.o: msg/SMacMsg_m.cc \
	msg/SMacMsg_m.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/net/BmacNetwLayer.o: net/BmacNetwLayer.cc \
	$(MIXIM_PROJ)/base/phyLayer/AnalogueModel.h \
	$(MIXIM_PROJ)/base/modules/Blackboard.h \
	net/BmacNetwLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseUtility.h \
	$(MIXIM_PROJ)/base/modules/BaseMacLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseLayer.h \
	$(MIXIM_PROJ)/base/modules/BatteryAccess.h \
	$(MIXIM_PROJ)/base/connectionManager/BaseConnectionManager.h \
	$(MIXIM_PROJ)/base/phyLayer/Interpolation.h \
	$(MIXIM_PROJ)/base/utils/Move.h \
	$(MIXIM_PROJ)/base/phyLayer/ChannelState.h \
	$(MIXIM_PROJ)/base/modules/BaseBattery.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyUtils.h \
	$(MIXIM_PROJ)/base/utils/SimpleAddress.h \
	$(MIXIM_PROJ)/base/utils/FWMath.h \
	$(MIXIM_PROJ)/base/utils/ImNotifiable.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingBase.h \
	$(MIXIM_PROJ)/base/utils/FindModule.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/Mapping.h \
	$(MIXIM_PROJ)/base/utils/Coord.h \
	$(MIXIM_PROJ)/base/connectionManager/NicEntry.h \
	$(MIXIM_PROJ)/base/utils/HostState.h \
	$(MIXIM_PROJ)/base/modules/BaseModule.h \
	$(MIXIM_PROJ)/base/utils/MacToNetwControlInfo.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingUtils.h \
	$(MIXIM_PROJ)/base/phyLayer/Signal_.h \
	$(MIXIM_PROJ)/base/messages/NetwPkt_m.h \
	$(MIXIM_PROJ)/base/utils/NetwToMacControlInfo.h \
	$(MIXIM_PROJ)/base/utils/PassedMessage.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/net/WSNNetworkStackTrafficGen.o: net/WSNNetworkStackTrafficGen.cc \
	$(MIXIM_PROJ)/base/modules/AddressingInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/AnalogueModel.h \
	$(MIXIM_PROJ)/base/modules/Blackboard.h \
	$(MIXIM_PROJ)/base/modules/BaseUtility.h \
	$(MIXIM_PROJ)/base/modules/BaseMacLayer.h \
	$(MIXIM_PROJ)/base/modules/BaseLayer.h \
	$(MIXIM_PROJ)/base/modules/BatteryAccess.h \
	$(MIXIM_PROJ)/base/connectionManager/BaseConnectionManager.h \
	$(MIXIM_PROJ)/base/phyLayer/Interpolation.h \
	$(MIXIM_PROJ)/base/utils/Move.h \
	$(MIXIM_PROJ)/base/phyLayer/ChannelState.h \
	$(MIXIM_PROJ)/base/modules/BaseBattery.h \
	$(MIXIM_PROJ)/base/phyLayer/PhyUtils.h \
	msg/sensor_m.h \
	$(MIXIM_PROJ)/base/utils/SimpleAddress.h \
	$(MIXIM_PROJ)/base/utils/FWMath.h \
	$(MIXIM_PROJ)/base/modules/ArpInterface.h \
	$(MIXIM_PROJ)/base/utils/ImNotifiable.h \
	$(MIXIM_PROJ)/base/modules/BaseArp.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingBase.h \
	$(MIXIM_PROJ)/base/utils/FindModule.h \
	$(MIXIM_PROJ)/base/phyLayer/MacToPhyInterface.h \
	$(MIXIM_PROJ)/base/phyLayer/Mapping.h \
	$(MIXIM_PROJ)/base/utils/Coord.h \
	$(MIXIM_PROJ)/base/modules/BaseWorldUtility.h \
	$(MIXIM_PROJ)/modules/utility/Packet.h \
	$(MIXIM_PROJ)/base/connectionManager/NicEntry.h \
	$(MIXIM_PROJ)/base/utils/HostState.h \
	$(MIXIM_PROJ)/base/modules/BaseModule.h \
	$(MIXIM_PROJ)/base/phyLayer/MappingUtils.h \
	$(MIXIM_PROJ)/base/phyLayer/Signal_.h \
	$(MIXIM_PROJ)/base/utils/PassedMessage.h \
	$(MIXIM_PROJ)/base/utils/NetwToMacControlInfo.h \
	$(MIXIM_PROJ)/base/messages/NetwPkt_m.h \
	net/WSNNetworkStackTrafficGen.h \
	$(MIXIM_PROJ)/base/messages/MacPkt_m.h
$O/utility/WSNWorldUtilityStats.o: utility/WSNWorldUtilityStats.cc \
	$(MIXIM_PROJ)/base/utils/ImNotifiable.h \
	$(MIXIM_PROJ)/base/modules/Blackboard.h \
	utility/WSNWorldUtilityStats.h \
	$(MIXIM_PROJ)/base/utils/Coord.h \
	$(MIXIM_PROJ)/base/modules/BaseWorldUtility.h \
	$(MIXIM_PROJ)/base/utils/FWMath.h \
	$(MIXIM_PROJ)/modules/utility/Packet.h

